The present invention relates to a method and apparatus for maintaining communication between slave servers communicating in incompatible formats during a network software upgrade process. The present invention provides a way to install new network communications software on one or more slave servers which is incompatible with existing network software, while maintaining communications among the servers running the incompatible software. In particular, the system of the present invention enables servers operating under the old network software to coexist in the same network with servers running the new network software.
A common problem encountered by network personnel relates to the upgrading of server network software from a first program to a second program where the two programs communicate in incompatible formats.
There are several different approaches conventionally used to upgrade the network software. According to one approach, new network software is installed on a so-called master server, and then the updated software is sequentially copied from the master server to each of plural slave servers. This approach to upgrading the network software is disruptive to the network, however, as servers running the different versions of the network software are unable to communicate with one another.
Another conventional approach involves simultaneously installing the network software on all of the various servers which together constitute the network.
This approach is problematic in that the entire network is made inoperable while the software is being installed. Moreover, this approach requires a significant number of trained software installers. Notably, the simultaneous installation requires a software installer for each server, which makes this approach impractical in all but the smallest networks.
One object of the invention is to provide an improved master server capable of communicating with slave servers in each of first and second data formats, thereby facilitating communications between slave servers communicating in formats which are incompatible with one another.
A related object of the present invention to provide an improved method for migrating servers in a network from a first version to a second version with minimal disruption to the network.
These and other objects of the invention are discussed or will be apparent from the following description of the invention.
The above-listed objects are met or exceeded by the present method for migrating servers in a hierarchical network from a first version of network software to a second version of network software incompatible with the first version. The hierarchical network includes plural slave servers connected to a master server, a given slave server communicating with another slave server through the master server. The method of the present invention includes a step of installing in the master server:
a second version of network software which coexists with an existing first version of network software, the first version of network software processing data in a first format and the second version of network software processing data in a second format different from the first format;
a first converter for converting the first format data to the second format data when a first predetermined event such as low CPU usage is detected; and
a second converter for converting the second format data to the first format data when the same or a second predetermined event is detected;
wherein the master server facilitates the communication and coexistence of slave servers running the first version of the network software with slave servers running the second version of the network software.
According to a further aspect of the present invention, selected ones of the slave servers may be sequentially upgraded from the first version of the network software to the second version of the network software with minimal interruption to the network as the master server maintains communications between slave servers running the first version of the network software with slave servers running the second version of the network software. Moreover, once all of the slave servers have been migrated to the second version of the network software, then the first version of network software, and the first and second converters may be deleted from the master server.
According to another aspect of the invention, each server is provided with a local directory containing user address information regarding local users directly attached to the server, and a master directory containing user address information regarding users indirectly available through other servers, the local directory and the master directory containing data stored in a first format. Moreover, each slave server is provided with a first version replicator program for communicating update information in the first format to and from a first version replicator program provided in the master server.
According to the present aspect of the invention, the master server is provided with a second version of network software which coexists with the first version of network software, the first version of network software processing data in the first format and the second version of network software processing data in a second format different from the first format. The master server is further provided with a second version replicator program which coexists with the first version replicator program and which communicates update information in the second format, and a pump mechanism. The pump mechanism includes an information converter for converting the first format data to the second format data when a first predetermined event is detected, and for converting the second format data to the first format data when the same or a second predetermined event is detected. Still further, the master server is provided with a converter for converting the first format data stored in the master server master directory to the second format and converting the first format data stored in the master server local directory to the second format.
In a network according to the above-described aspect of the invention, individual ones of the plurality of slave servers are migrated to the second version of the network software by overwriting the first version of network software with a second version of network software, overwriting the first version replicator program with the second version replicator program; overwriting the slave server copy of the master directory with a copy of the master server master directory, and installing a converter and converting the first format data stored in the slave server local directory to the second format.